home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / AMIGA / (A)TA / (A)TAR.ADF / Grab_Utilities / SSS.doc < prev    next >
Text File  |  1987-02-04  |  20KB  |  469 lines

  1.  
  2.                          Roundabout Software    
  3. ---------------------------------------------------------------------
  4.  
  5. Thought you had seen the end of screen save utilities on Amiga?  Not
  6. by a long shot.  Introducing three programs designed to help you get
  7. an IFF picture out of almost anything that can be on your screen.
  8. This archive contains the following :
  9.  
  10.  GrabViews 16552 (one shot screen save program   )
  11.  GrabViews.info   779 (icon for the above             )
  12.  TimeSave 21284 (timed screen save program      )
  13.  TimeSave.info  1227 (icon for the above             )
  14.  Memview2 33208 (scan memory for bitmaps        )
  15.  Memview2.info  1283 (icon for the above             )
  16.  Registration  2330 (the part you dont want to read )
  17.  SSS.doc  20711 (what you're gazing at now      )
  18.  
  19. Accept NO substitutions.
  20.  
  21. Preface
  22. -------
  23. SSS was written to try to address some of the inadequacies of the many
  24. screen grab and snapshot programs currently available. For the
  25. technically oriented, all three programs work by starting in GfxBase
  26. and working their way through the list of active ViewPorts. A display
  27. does NOT need to be on an Intuition screen for the SSS programs to
  28. find it. Other screenshot programs that look for screens instead of
  29. ViewPorts are likely to not work properly if a program is directly
  30. manipulating the display as described in the RKM 'Graphics Primitives'
  31. chapter.
  32.  
  33. Format of these documents
  34. -------------------------
  35. The documents that follow are for the three programs that make up SSS,
  36. GrabViews, TimeSave, and Memview2.  The programs are designed to each
  37. be in ascending order as to how hard it might possibly be to get at a
  38. screen. For example, if you have control of your computer while a
  39. program is running that you need a screenshot of, GrabViews will do
  40. the trick.  If you can't do anything while the program is running, not
  41. even a hotkey, then TimeSave will save screens without your having to
  42. press a single key.  If TimeSave will not work with the program you
  43. are trying to get a snapshot with (a desperate case indeed) then
  44. Memview2 is your last resort.  Enough of the preface, onward to the
  45. instructions for each of these programs...
  46.  
  47.  
  48.  GrabViews 1.0
  49. ----------------------------------------------------------------------
  50. GrabViews is the most basic form of these utilities.  When run, the
  51. program will save all currently active displays with incremental file
  52. names. Operation is fairly simple, but the interface is different
  53. depending on whether you start from Workbench or CLI.
  54.  
  55. Performance notes - CLI
  56. -----------------------
  57.  
  58. GrabViews runs from CLI with a single argument, the prefix for the
  59. filename(s) that the IFF's will be saved with.  Since there can be
  60. many displays active at any given time, files are numbered
  61. incrementally in the following fashion :
  62.  
  63.  <prefix>.VPXX
  64.  
  65. The prefix is what you supply on the command line.  The VP stands
  66. for ViewPort, and the XX will be a number, starting at 0.  GrabViews
  67. does not check for files of the same name already existing, so use
  68. with care if you already have any similarly-named files in the same
  69. directory.  If GrabViews cannot open a file with the name you
  70. requested, it will abort gracefully.
  71.  
  72. Example usage would be:
  73.  
  74.  1> GrabViews Picture
  75.  
  76. Assuming you have two displays active (say the Workbench screen and a
  77. terminal program) you would have the following files written:
  78.  
  79.  Picture.VP00
  80.  Picture.VP01
  81.  
  82. These would go to the current directory.  If you wanted to send them
  83. to another directory, just add the path to the prefix on the command
  84. line, for example:
  85.  
  86.  1> GrabViews dh0:graphics/pictures/hello
  87.  
  88. Would result in hello.VP00 and hello.VP01 being written to the
  89. directory 'dh0:graphics/pictures'.
  90.  
  91. Starting GrabViews from the CLI with no arguments will result in usage
  92. information being displayed just to remind you what is going on.
  93.  
  94. Performance notes - Workbench
  95. -----------------------------
  96.  
  97. Running from WorkBench is easy, just click on the icon.  A small
  98. window will open up and present some information and a prompt for you
  99. to enter the prefix to be used on the filenames.  After you have done
  100. this, if your information is valid, GrabViews will start saving the
  101. displays one at a time, displaying each filename as it is written.
  102. After everything is finished, you will be asked to press a key to
  103. terminate GrabViews.  To write to a particular directory, just tack on
  104. the directory name in front of the prefix as described in the CLI
  105. usage section.
  106.  
  107. Please note that display of filenames as they are saved ONLY occurs if
  108. you run the program from Workbench.
  109.  
  110. Mis-Features
  111. ------------
  112. Currently there is NO support for funny video modes such as HAM or
  113. ExtraHalfBright.  If you do happen to have screens of this nature up
  114. when you run GrabViews, it won't crash; rather, it will just output an
  115. IFF file that probably can't be shown by any type of picture viewer.
  116. On the upside, non-standard screen sizes should be saved perfectly.
  117.  
  118. If you happen to have more than 100 ViewPorts active when you run
  119. GrabViews, the numbers will 'wrap around' and start saving again when
  120. it gets to 100, writing over the VP00 files and so on.  I seriously
  121. doubt that anyone will have a problem with this, but I thought I would
  122. add it in.  If YOU can figure out how to get over 100 ViewPorts active
  123. at once, then I will gladly modify the code to go up to 999.
  124.  
  125.  TimeSave 1.0
  126. ----------------------------------------------------------------------
  127. TimeSave was written to handle those times when the program you are
  128. trying to get a screen from won't let your hotkeys get through, or
  129. does something strange when you switch back to CLI (if it will even
  130. LET you get back to CLI).  It was also written to allow unoprompted
  131. and scheduled saves of the active displays.  The basic operation of
  132. the program is similar to that of GrabViews, but with a few more
  133. options.  Read onward.
  134.  
  135. Performance notes - CLI
  136. -----------------------
  137. TimeSave expects two arguments on the command line, the start delay
  138. and the save delay.  Start delay refers to the amount of time in
  139. seconds that TimeSave is to wait before beginning incremental saving
  140. of displays.  The save delay is the amount of time in seconds to wait
  141. between saving all the available displays on the system.  For example,
  142. if you were to start TimeSave in this manner:
  143.  
  144.  1> TimeSave 180 60
  145.  
  146. Then TimeSave would wait three minutes (180 seconds) before going to
  147. work.  Then it would save all the displays once a minute.  Starting
  148. TimeSave with no arguments, an improper number of arguments, or the
  149. wrong type of arguments (ie. TimeSave hello world) will result in the
  150. usage information being repeated to make sure, again, that you know
  151. what you are doing.  Usage after this point is described in the
  152. "general usage" section following Workbench startup.
  153.  
  154. Performance notes - Workbench
  155. -----------------------------
  156. To start TimeSave from Workbench, just click on the icon.  A small
  157. window will open up prompting you for the start delay time and the
  158. save delay time, as detailed above.  If you enter the wrong usage
  159. information, then TimeSave will abort, assuming that you really didn't
  160. want to run it.  If your options have been entered correctly, the
  161. small window will close up and operations go on to what is described
  162. below.
  163.  
  164. Performance notes - General Usage
  165. ---------------------------------
  166. After you have started TimeSave in your preferred manner, a small
  167. window with a close gadget will pop up letting you know that TimeSave
  168. is working.  If you want to quit TimeSave, just click on the close
  169. gadget. After the initial delay that was entered, TimeSave will save
  170. all the current ViewPorts (displays) on the system to the logical
  171. device GRAB:.  I used this name so that Grabbit users won't have to
  172. reassign anything to use this program.  The filename is in the
  173. following format:
  174.  
  175.  TimeSave.VPXX.YYY
  176.  
  177. The XXX refers to the the ViewPort number (starting at zero) and the
  178. YYY number refers to the number of the save procedure that the
  179. pictures came from.  After the picture has been saved the WorkBench
  180. screen will flash, letting you know that the picture has been written.
  181.  
  182. Here is a typical sequence of events in using TimeSave:
  183.  
  184.  1> Assign GRAB: DF1:
  185.  
  186.  ( this assigns the logical device GRAB: which is where TimeSave
  187.    will try to save its files to )
  188.  
  189.  1> run TimeSave 30 120
  190.  
  191.  ( This starts TimeSave with an initial delay of 30 seconds and
  192.    a 2 minute delay between saving sets of screens. )
  193.  
  194.  Now, assuming you have two active displays, after 30 seconds the
  195.  following files will be written:
  196.  
  197.  DF1:TimeSave.VP00.000
  198.  DF1:TimeSave.VP01.000
  199.  
  200.  The Workbench screen will flash, letting you know that the files
  201.  have been written.
  202.  
  203.  Then two minutes will pass.  Suppose during that time you open
  204.  up ANOTHER screen.  Here is what will be written:
  205.  
  206.  DF1:TimeSave.VP00.001
  207.  DF1:TimeSave.VP01.001
  208.  DF1:TimeSave.VP02.001
  209.  
  210.  Again, the Workbench screen will flash.
  211.  
  212.  Then you click on the close gadget and TimeSave goes away.  After
  213.  this TimeSave session you have the following files:
  214.  
  215.  DF1:TimeSave.VP00.000
  216.  DF1:TimeSave.VP01.000
  217.  DF1:TimeSave.VP00.001
  218.  DF1:TimeSave.VP01.001
  219.  DF1:TimeSave.VP02.001
  220.  
  221.  
  222. During the time that TimeSave is running, if anything goes wrong
  223. (TimeSave can't save the files, for instance) it will abort
  224. gracefully.  One other thing you should know about is that TimeSave
  225. sets itself to a VERY high priority to try to keep things from moving
  226. while it is saving the files. Don't worry, while it is waiting for the
  227. time intervals, it won't slow anything down at all, just when it is
  228. saving the screens.  If there is too much movement going on when the
  229. screen is being saved, there is a good chance that you will get a
  230. little bit of blur, but this doesn't happen very often.
  231.  
  232. Mis-Features
  233. ------------
  234. As with GrabViews, TimeSave won't handle funny video modes such as
  235. HAM and ExtraHalfBright.  Also, certain game screens do not come out
  236. quite right.  The pixels will all be in the right places, but the
  237. colors come out funny every now and then.  In such a case, just be
  238. glad that you at least have the meat of the picture (the bitmap) and
  239. boot up a paint program and play with the palette until it looks
  240. right.
  241.  
  242.  MemView 2.0
  243. ----------------------------------------------------------------------
  244. MemView 2.0 is based on a program written a couple of years ago by Leo
  245. Schwab.  It is designed as your last resort -- for those games that
  246. don't start from Workbench conditions (Psygnosis products come to
  247. mind) and for times when the displays may be hidden in memory but not
  248. actually showing on the screen (see the hints and tips section for
  249. examples of this). Basically what it lets you do is scan through chip
  250. memory looking for bitmaps and then (if you choose) saves the image as
  251. an IFF file when you exit the program.
  252.  
  253. Performance notes - Workbench & CLI
  254. -----------------------------------
  255. To start from Workbench, just click on the icon.  To start from CLI,
  256. just run the program.  Execution after this is identical in either
  257. case.
  258.  
  259. Performance notes - General Usage
  260. ---------------------------------
  261. After you have started Memview2, a window will pop up with many
  262. gadgets in it. Nine of these are switches, and when you click on one
  263. of them, it will slide to the right, and the previously selected one
  264. will turn off.  The four gadgets on the top row are the screen
  265. resolution at which you wish to work.  The five gadgets underneath
  266. those are the depth settings, 1 = 2 colors, 2 = 4 colors, 3 = 8
  267. colors, 4 = 16 colors, and 5 = 32 colors.  Note that you cannot have a
  268. depth of more than 4 with 640x400 and 640x200 modes.  Even though you
  269. cannot select things like this, I thought I would mention it.
  270.  
  271. Below the five depth gadgets is a string gadget.  The name in here is
  272. the filename to save the resulting picture to. If you just want to
  273. look through memory and don't want to save a filename, then delete the
  274. default string contained in the box by pressing Right-Amiga-X (or lots
  275. of backspaces if you are more comfortable with that).
  276.  
  277. The last two gadgets are 'GO' and 'Cancel'.  'GO' will proceed with
  278. program operation, and 'Cancel' will take you back to wherever you
  279. started from (Workbench or CLI).
  280.  
  281. After you click on 'GO' then a display matching the resolution and
  282. depth that you specified will be created.  Control from this point is
  283. joystick oriented (just like in the original Memview program), and
  284. kind of fun if I might say so.  You have five options available to
  285. you:
  286.  
  287.  Joystick left : Select slow scroll mode
  288.  Joystick right: Select fast (zooom) scroll mode
  289.  Joystick up   : Scroll upward through memory
  290.  Joystick down : Scroll downward through memory
  291.  Joy Button    : Exit the program
  292.  
  293. Your task now is to find the bitmaps that you are looking for, which
  294. hopefully match your specifications when you started the program.  You
  295. want to start by scrolling DOWNWARD until you find what you are
  296. looking for.  Chances are that you will find four or five different
  297. 'versions' of the screen you are looking for, all but one with a good
  298. bit of miscellaneous garbage on them.  I like to check things out in
  299. high speed zooom mode and then when I find it, I use the slow scroll
  300. mode to get the picture lined up correctly.  There is also a good
  301. chance that your picture will be split across the border, as if
  302. somebody shifted the entire thing over and it wrapped around to the
  303. other side.  In this case, save it anyway and use a paint program to
  304. move things around correctly.  You will have to use a paint program
  305. anyway to get the palette right -- Memview 2.0 uses a fixed palette
  306. and searching through memory for a palette could take hours, although
  307. I might do something like this for a future release.
  308.  
  309.   A typical session with Memview 2.0 might go something like this:
  310.  
  311.  Boot up that Psygnosis game that you want a screen from.
  312.  
  313.  When the screen shows what you want a picture of, RESET your
  314.  computer.  Yes, thats right, control-A-A (or the chickenhead
  315.  if you don't have a 1000)
  316.  
  317.  Boot up with your workbench, or perhaps even a blank disk with
  318.  nothing but Memview 2.0 on it, and run Memview 2.0.
  319.  
  320.  Select 320x200 resolution and a depth of 5, a filename of
  321.  PSYG.PIC.
  322.  
  323.  Scroll DOWNWARD through memory using zooom mode until you
  324.  find the screen that was displayed when you reset the computer.
  325.  Yup, its still in there, and if you don't use much memory, it
  326.  can hang around for DAYS.
  327.  
  328.  Since this is a five bitplane screen, usually the picture will
  329.  be the fifth one once you start seeing versions of it with a little
  330.  bit of garbage on 'em.
  331.  
  332.  Use the fine scroll mode to center the picture, and press the
  333.  joystick button.  Your picture will be written out.
  334.  
  335.  Load up your favorite paint program (Graphicraft! hahahaha) and
  336.  adjust the palette until you are happy with it.  The end.
  337.  
  338. Thats all there is to it.  There are also some other neat things that
  339. Memview 2.0 can accomplish that are detailed in the 'Hints & Tips'
  340. section.
  341.  
  342. Mis-Features
  343. ------------
  344. You've probably already guessed -- at the current time, Memview 2.0
  345. only works in the above stated resolutions. No weird screen modes, and
  346. no overscan or strange screen sizes.  Maybe in a future release if I
  347. can figure out how to implement it in my original requester.
  348.  
  349. If you are using either 320x400 or 640x400 resolution with more than
  350. three bitplanes, the scroll is not exactly smooth, but jumpy.  Don't
  351. worry, though, everything straightens out when you let go of the
  352. stick, and everything will be saved properly.  Not my fault, just that
  353. the ScrollVPort routine isn't quite perfect.  I've done what I can to
  354. keep things looking reasonably pretty.
  355.  
  356. You should NOT scroll UPWARDS through memory if you intend on saving
  357. the picture, or else your IFF won't match what was on the screen when
  358. you save it.  Always start your journey into memory by scrolling
  359. DOWNWARD.  I'll be fixing this soon, but I wanted to go ahead and get
  360. this entire package out and in 'distribution' fairly quick.  No, you
  361. won't crash or anything, its just that the result is not correct.
  362.  
  363.  SSS Hints and Tips
  364. ----------------------------------------------------------------------
  365. Okay, here are some fun things you can do with SSS that you might not
  366. have been able to think of while wading through these monotonous
  367. instructions.
  368.  
  369. 1) Cheat at Centerfold Squares.  Apparently CFS keeps a duplicate of
  370. your opponent in memory as she is seen when you win.  The sequence of
  371. events to get the picture is:
  372.  
  373.     a) boot CFS and get a screen with the partially obscured opponent
  374.  
  375.     b) run Memview 2.0 at 320x200 resolution and a depth of 5. Scroll
  376.        through until you find the right picture, with the weird colors
  377.   and all.  Save the result.
  378.  
  379.     c) Get a copy of the REAL CFS screen with GrabVeiws.  Put these in
  380.        the same directory.
  381.  
  382.     d) Quit CFS unless you have lots of memory.  Boot up a paint
  383.   program and load in the Memview 2.0 picture.  Then swap screens and
  384.   load in the GrabViews picture.  Now your palette should be correct.
  385.   Swap back and view your handiwork and feel kind of guilty.
  386.  
  387. 2) You can get pictures from all those neat Psygnosis games that have
  388. custom bootblocks and don't let you do diddley while they are running.
  389.  
  390. 3) You can save a picture of a running program WITH THE MENU DOWN.
  391.   Yes, I know it sounds hard to believe, but it works.  First, run
  392.  TimeSave. Then get yourself situated for the save by pulling down the
  393.  menu.  Wait for the flash (if you are on Workbench doing this, if not
  394.  just kind of time yourself or wait for the disk to stop spinning) and
  395.  then check your work to see if it came out okay.  I've done this
  396.  several times with no problem, and is going to be a big help when
  397.  doing A.X. reviews in the future.
  398.  
  399. 4) What else?  I'm not sure.  If you find anything else fun to do with
  400. SSS then please get in touch with me and let me know.
  401.  
  402.  
  403.  Distribution
  404. -------------
  405.  
  406. And now for the part that you probably didn't want to read.
  407.  
  408. This package may be distributed via BBS's anywhere, or included on
  409. any software collection provided that the charge for said software
  410. collection or PD disk does not exceed that of the media and/or
  411. shipping charges.  Posting to major networks is allowed (and
  412. encouraged) except for Compuserve.  I have no desire to belong to
  413. their libraries, and if you find this there, please ask the sysops to
  414. delete it by request of the author.
  415.  
  416. If you do choose to distribute this in ANY manner, you MUST include
  417. every program that is in the original distribution.  A list of all the
  418. files occurs at the beginning of these documents.
  419.  
  420. Please note that this program and the entire SSS system is released
  421. as freely distributable Shareware, which means that you can test drive
  422. it and see how you like it, after which time you make the decision to
  423. buy or die (grin).  If you can't afford the contribution, don't worry
  424. yourself to sleep, I've been in the same shape myself before.  Future
  425. additions and upgrades (for example, a hotkey activated utility like
  426. the ones above) to SSS depend on the support from the users, however.
  427. See the Registration file for your shareware registration info.
  428.  
  429. On the other hand, if you are using this package in any kind of
  430. commercial environment (one idea that comes to mind is screenshots for
  431. magazines) then the contribution is MANDATORY. The price I am asking
  432. is not unreasonable for people in those situations.  For your
  433. registration form and registration information, please consult the
  434. Registration file that is contained in this distribution.
  435.  
  436.  Finding the author
  437. -------------------
  438. If you enjoy this program, then why not give my BBS a call?  I may
  439. be located at the following locations:
  440.  
  441.  
  442.  
  443.   Chris Bailey (VOICE) (803) 796-8058 or
  444.     (VOICE) (803) 794-4933
  445.   My BBS   (803) 791-9448
  446.   bix :   csbailey
  447.   U.S. Snail 2405 Feather Run Trail
  448.     W. Columbia, SC
  449.     29169
  450.  
  451. And at various other BBS's across the country (thank you, PC-Pursuit).
  452.  
  453. ----------------------------------------------------------------------
  454.  
  455.   This product was written and developed with:
  456.  
  457.    Benchmark Modula-2
  458.        by Avant Garde Software
  459.  
  460. ----------------------------------------------------------------------
  461.  
  462. Revision History
  463. ----------------
  464.  
  465. Version 1.0 : Initial release consisting of:
  466.   Memview   2.0
  467.   GrabViews 1.0
  468.   TimeSave  1.0
  469.